
import ipaddress
import subprocess
# 从用户输入中获取要检测的网段和子网掩码
network = ipaddress.ip_network(input("请输入要检查的网段和子网掩码，格式如：192.168.0.0/24："))
# 创建一个空列表，用于存储已连接的IP地址
live_hosts = []
# 遍历该网段的所有地址，检查是否可以连接
for host in network.hosts():
# 将IP地址转换成字符串格式
    host = str(host)
# 调用系统命令ping，检查该IP地址是否可以连接
    result = subprocess.run(['ping', '-c', '5', '-w', '5', host], stdout=subprocess.DEVNULL)
# 如果连接成功，将其记录下来
    if result.returncode == 0:
        live_hosts.append(host)
        print(f"{host}已被使用")
    else:
        print(f"{host}未被使用") # 将已连接的IP地址输出到文件
with open("live_hosts.txt", "w") as f:
    for host in live_hosts: f.write(host + "\n")